//
//  NewMapViewController.m
//  Car
//
//  Created by 何晓文 on 15/10/8.
//  Copyright (c) 2015年 朱鸿儒. All rights reserved.
//

#import "NewMapViewController.h"
#import <CoreLocation/CoreLocation.h>
#import <MapKit/MapKit.h>

@interface NewMapViewController ()
@property (nonatomic,strong) CLGeocoder *geocoder;
@end

@implementation NewMapViewController

- (void)viewDidLoad {
	[super viewDidLoad];
	
	_geocoder=[[CLGeocoder alloc]init];
	
	[self listPlacemark];
}

#pragma mark 在地图上定位
-(void)location{
	//根据“北京市”进行地理编码
	[_geocoder geocodeAddressString:@"北京市" completionHandler:^(NSArray *placemarks, NSError *error) {
		CLPlacemark *clPlacemark=[placemarks firstObject];//获取第一个地标
		MKPlacemark *mkplacemark=[[MKPlacemark alloc]initWithPlacemark:clPlacemark];//定位地标转化为地图的地标
		NSDictionary *options=@{MKLaunchOptionsMapTypeKey:@(MKMapTypeStandard)};
		MKMapItem *mapItem=[[MKMapItem alloc]initWithPlacemark:mkplacemark];
		[mapItem openInMapsWithLaunchOptions:options];
	}];
}
-(void)listPlacemark{
	//根据“北京市”进行地理编码
	[_geocoder geocodeAddressString:@"北京市" completionHandler:^(NSArray *placemarks, NSError *error) {
		CLPlacemark *clPlacemark1=[placemarks firstObject];//获取第一个地标
		MKPlacemark *mkPlacemark1=[[MKPlacemark alloc]initWithPlacemark:clPlacemark1];
		//注意地理编码一次只能定位到一个位置，不能同时定位，所在放到第一个位置定位完成回调函数中再次定位
		[_geocoder geocodeAddressString:@"郑州市" completionHandler:^(NSArray *placemarks, NSError *error) {
			CLPlacemark *clPlacemark2=[placemarks firstObject];//获取第一个地标
			MKPlacemark *mkPlacemark2=[[MKPlacemark alloc]initWithPlacemark:clPlacemark2];
			NSDictionary *options=@{MKLaunchOptionsMapTypeKey:@(MKMapTypeStandard)};
			//MKMapItem *mapItem1=[MKMapItem mapItemForCurrentLocation];//当前位置
			MKMapItem *mapItem1=[[MKMapItem alloc]initWithPlacemark:mkPlacemark1];
			MKMapItem *mapItem2=[[MKMapItem alloc]initWithPlacemark:mkPlacemark2];
			[MKMapItem openMapsWithItems:@[mapItem1,mapItem2] launchOptions:options];
			
		}];
		
	}];
}
-(void)turnByTurn{
	//根据“北京市”进行地理编码
	[_geocoder geocodeAddressString:@"北京市" completionHandler:^(NSArray *placemarks, NSError *error) {
		CLPlacemark *clPlacemark1=[placemarks firstObject];//获取第一个地标
		MKPlacemark *mkPlacemark1=[[MKPlacemark alloc]initWithPlacemark:clPlacemark1];
		//注意地理编码一次只能定位到一个位置，不能同时定位，所在放到第一个位置定位完成回调函数中再次定位
		[_geocoder geocodeAddressString:@"郑州市" completionHandler:^(NSArray *placemarks, NSError *error) {
			CLPlacemark *clPlacemark2=[placemarks firstObject];//获取第一个地标
			MKPlacemark *mkPlacemark2=[[MKPlacemark alloc]initWithPlacemark:clPlacemark2];
			NSDictionary *options=@{MKLaunchOptionsMapTypeKey:@(MKMapTypeStandard),MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving};
			//MKMapItem *mapItem1=[MKMapItem mapItemForCurrentLocation];//当前位置
			MKMapItem *mapItem1=[[MKMapItem alloc]initWithPlacemark:mkPlacemark1];
			MKMapItem *mapItem2=[[MKMapItem alloc]initWithPlacemark:mkPlacemark2];
			[MKMapItem openMapsWithItems:@[mapItem1,mapItem2] launchOptions:options];
			
		}];
		
	}];
}

@end
